﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DevComponents.DotNetBar;
using BUS;
using DAL;
namespace QuanLyNhaSach
{
    public partial class Form_PhieuXuat : DevComponents.DotNetBar.Office2007Form
    {
        Sach_BUS sach_bus;
        Sach_DTO sach_dto;
        PhieuXuat_BUS phieuxuat_bus;
        PhieuXuat_DTO phieuxuat_dto;
        ChiTietPhieuXuat_DTO chitietphieuxuat_dto;
        public Form_PhieuXuat()
        {
            InitializeComponent();
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void txtSoLuong_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!char.IsControl(e.KeyChar) && char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            sach_bus = new Sach_BUS();
            sach_dto = new Sach_DTO();

            sach_dto = sach_bus.DanhSachSach_TheoMaSach(cbxTenSach.SelectedValue.ToString());

            if (int.Parse(txtSoLuong.Text) <= 0)
            {
                MessageBoxEx.Show("Số lượng nhập phải lớn hơn 0", "Thông báo");
                txtSoLuong.Select();
                return;
            }

            //truong hop co roi lai them nua thi cap nhat lai dong đó.
            int flag = -1;//ko trung
            for (int i = 0; i < dtgPhieuXuat.Rows.Count; i++)
            {
                if (dtgPhieuXuat.Rows[i].Cells["Str_MaSach"].Value.ToString() == sach_dto.Str_MaSach)
                    flag = i;//trung thi cap nhat lai so luong
            }
            if (flag != -1)//da trung thi cap nhat lai so luong
            {
                int i_SoLuong = int.Parse(dtgPhieuXuat.Rows[flag].Cells["Str_SoLuong"].Value.ToString());
                dtgPhieuXuat.Rows[flag].Cells["Str_SoLuong"].Value = i_SoLuong + int.Parse(txtSoLuong.Text);
            }
            else
                dtgPhieuXuat.Rows.Add(sach_dto.Str_MaSach, sach_dto.Str_TenSach, int.Parse(txtSoLuong.Text));

        }

        private void Form_PhieuXuat_Load(object sender, EventArgs e)
        {
            sach_bus = new Sach_BUS();

            txtNgayLap.Text = DateTime.Now.ToShortDateString();

            cbxTenSach.DataSource = sach_bus.LayDanhSachSach();
            cbxTenSach.DisplayMember = "Str_TenSach";
            cbxTenSach.ValueMember = "Str_MaSach";
        }

        private void txtSoLuong_KeyPress_1(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsDigit(e.KeyChar) && !Char.IsControl(e.KeyChar))
                e.Handled = true; 
        }

        private void btnInHoaDon_Click(object sender, EventArgs e)
        {
            //ws = new WebService_BUS();
            //phieuxuat_dto = new PhieuXuat_DTO();
            //int flag = 1;
            ////chen du lieu bang phieu nhap
            //phieuxuat_dto.Str_MaPhieuXuat = ws.MaPhieuXuatTang();
            //phieuxuat_dto.D_NgayLap = DateTime.Parse(txtNgayLap.Text);
            //phieuxuat_dto.Str_MaNV = "NV001";
            //flag = ws.ThemPhieuXuat(phieuxuat_dto);


            //for (int i = 0; i < dtgPhieuXuat.Rows.Count; i++)
            //{
            //    sach_dto = new Sach_DTO();
            //    chitietphieuxuat_dto = new ChiTietPhieuXuat_DTO();
            //    //cap nhat so luong ban cua sach                
            //    sach_dto.Str_MaSach = dtgPhieuXuat.Rows[i].Cells["Str_MaSach"].Value.ToString();
            //    sach_dto = ws.DanhSachSach_TheoMaSach(sach_dto.Str_MaSach);
            //    int tem = sach_dto.I_SoLuongBan;
            //    int slsaunhap = tem + int.Parse(dtgPhieuXuat.Rows[i].Cells["Str_SoLuong"].Value.ToString());
            //    sach_dto.I_SoLuongBan = slsaunhap;
            //    flag = ws.CapNhatSach(sach_dto);

            //    //chen du lieu banh chi tiet phieu nhap
            //    chitietphieuxuat_dto.Str_MaPhieuXuat = phieuxuat_dto.Str_MaPhieuXuat;
            //    chitietphieuxuat_dto.Str_MaSach = sach_dto.Str_MaSach;
            //    chitietphieuxuat_dto.I_SoLuong = int.Parse(dtgPhieuXuat.Rows[i].Cells["Str_SoLuong"].Value.ToString());
            //    flag = ws.ThemChiTietPhieuXuat(chitietphieuxuat_dto);
            //}
            //if (flag == 1)
            //{
            //    MessageBoxEx.Show("Lập phiếu xuất thành công", "Thông báo");
            //}
            //else
            //    MessageBoxEx.Show("Lập phiếu xuất thất bại", "Thông báo");   
        }

        private void btnHoaDonMoi_Click(object sender, EventArgs e)
        {
            dtgPhieuXuat.Rows.Clear();
        }

    }
}
